package com.leesche.zcsp.node.web.model;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class PubDeviceCommandCriteria {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public PubDeviceCommandCriteria() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andCommandidIsNull() {
            addCriterion("CommandId is null");
            return (Criteria) this;
        }

        public Criteria andCommandidIsNotNull() {
            addCriterion("CommandId is not null");
            return (Criteria) this;
        }

        public Criteria andCommandidEqualTo(Long value) {
            addCriterion("CommandId =", value, "commandid");
            return (Criteria) this;
        }

        public Criteria andCommandidNotEqualTo(Long value) {
            addCriterion("CommandId <>", value, "commandid");
            return (Criteria) this;
        }

        public Criteria andCommandidGreaterThan(Long value) {
            addCriterion("CommandId >", value, "commandid");
            return (Criteria) this;
        }

        public Criteria andCommandidGreaterThanOrEqualTo(Long value) {
            addCriterion("CommandId >=", value, "commandid");
            return (Criteria) this;
        }

        public Criteria andCommandidLessThan(Long value) {
            addCriterion("CommandId <", value, "commandid");
            return (Criteria) this;
        }

        public Criteria andCommandidLessThanOrEqualTo(Long value) {
            addCriterion("CommandId <=", value, "commandid");
            return (Criteria) this;
        }

        public Criteria andCommandidIn(List<Long> values) {
            addCriterion("CommandId in", values, "commandid");
            return (Criteria) this;
        }

        public Criteria andCommandidNotIn(List<Long> values) {
            addCriterion("CommandId not in", values, "commandid");
            return (Criteria) this;
        }

        public Criteria andCommandidBetween(Long value1, Long value2) {
            addCriterion("CommandId between", value1, value2, "commandid");
            return (Criteria) this;
        }

        public Criteria andCommandidNotBetween(Long value1, Long value2) {
            addCriterion("CommandId not between", value1, value2, "commandid");
            return (Criteria) this;
        }

        public Criteria andDeviceidIsNull() {
            addCriterion("DeviceID is null");
            return (Criteria) this;
        }

        public Criteria andDeviceidIsNotNull() {
            addCriterion("DeviceID is not null");
            return (Criteria) this;
        }

        public Criteria andDeviceidEqualTo(Long value) {
            addCriterion("DeviceID =", value, "deviceid");
            return (Criteria) this;
        }

        public Criteria andDeviceidNotEqualTo(Long value) {
            addCriterion("DeviceID <>", value, "deviceid");
            return (Criteria) this;
        }

        public Criteria andDeviceidGreaterThan(Long value) {
            addCriterion("DeviceID >", value, "deviceid");
            return (Criteria) this;
        }

        public Criteria andDeviceidGreaterThanOrEqualTo(Long value) {
            addCriterion("DeviceID >=", value, "deviceid");
            return (Criteria) this;
        }

        public Criteria andDeviceidLessThan(Long value) {
            addCriterion("DeviceID <", value, "deviceid");
            return (Criteria) this;
        }

        public Criteria andDeviceidLessThanOrEqualTo(Long value) {
            addCriterion("DeviceID <=", value, "deviceid");
            return (Criteria) this;
        }

        public Criteria andDeviceidIn(List<Long> values) {
            addCriterion("DeviceID in", values, "deviceid");
            return (Criteria) this;
        }

        public Criteria andDeviceidNotIn(List<Long> values) {
            addCriterion("DeviceID not in", values, "deviceid");
            return (Criteria) this;
        }

        public Criteria andDeviceidBetween(Long value1, Long value2) {
            addCriterion("DeviceID between", value1, value2, "deviceid");
            return (Criteria) this;
        }

        public Criteria andDeviceidNotBetween(Long value1, Long value2) {
            addCriterion("DeviceID not between", value1, value2, "deviceid");
            return (Criteria) this;
        }

        public Criteria andNtypeIsNull() {
            addCriterion("NTYPE is null");
            return (Criteria) this;
        }

        public Criteria andNtypeIsNotNull() {
            addCriterion("NTYPE is not null");
            return (Criteria) this;
        }

        public Criteria andNtypeEqualTo(Long value) {
            addCriterion("NTYPE =", value, "ntype");
            return (Criteria) this;
        }

        public Criteria andNtypeNotEqualTo(Long value) {
            addCriterion("NTYPE <>", value, "ntype");
            return (Criteria) this;
        }

        public Criteria andNtypeGreaterThan(Long value) {
            addCriterion("NTYPE >", value, "ntype");
            return (Criteria) this;
        }

        public Criteria andNtypeGreaterThanOrEqualTo(Long value) {
            addCriterion("NTYPE >=", value, "ntype");
            return (Criteria) this;
        }

        public Criteria andNtypeLessThan(Long value) {
            addCriterion("NTYPE <", value, "ntype");
            return (Criteria) this;
        }

        public Criteria andNtypeLessThanOrEqualTo(Long value) {
            addCriterion("NTYPE <=", value, "ntype");
            return (Criteria) this;
        }

        public Criteria andNtypeIn(List<Long> values) {
            addCriterion("NTYPE in", values, "ntype");
            return (Criteria) this;
        }

        public Criteria andNtypeNotIn(List<Long> values) {
            addCriterion("NTYPE not in", values, "ntype");
            return (Criteria) this;
        }

        public Criteria andNtypeBetween(Long value1, Long value2) {
            addCriterion("NTYPE between", value1, value2, "ntype");
            return (Criteria) this;
        }

        public Criteria andNtypeNotBetween(Long value1, Long value2) {
            addCriterion("NTYPE not between", value1, value2, "ntype");
            return (Criteria) this;
        }

        public Criteria andIsmoIsNull() {
            addCriterion("IsMO is null");
            return (Criteria) this;
        }

        public Criteria andIsmoIsNotNull() {
            addCriterion("IsMO is not null");
            return (Criteria) this;
        }

        public Criteria andIsmoEqualTo(Integer value) {
            addCriterion("IsMO =", value, "ismo");
            return (Criteria) this;
        }

        public Criteria andIsmoNotEqualTo(Integer value) {
            addCriterion("IsMO <>", value, "ismo");
            return (Criteria) this;
        }

        public Criteria andIsmoGreaterThan(Integer value) {
            addCriterion("IsMO >", value, "ismo");
            return (Criteria) this;
        }

        public Criteria andIsmoGreaterThanOrEqualTo(Integer value) {
            addCriterion("IsMO >=", value, "ismo");
            return (Criteria) this;
        }

        public Criteria andIsmoLessThan(Integer value) {
            addCriterion("IsMO <", value, "ismo");
            return (Criteria) this;
        }

        public Criteria andIsmoLessThanOrEqualTo(Integer value) {
            addCriterion("IsMO <=", value, "ismo");
            return (Criteria) this;
        }

        public Criteria andIsmoIn(List<Integer> values) {
            addCriterion("IsMO in", values, "ismo");
            return (Criteria) this;
        }

        public Criteria andIsmoNotIn(List<Integer> values) {
            addCriterion("IsMO not in", values, "ismo");
            return (Criteria) this;
        }

        public Criteria andIsmoBetween(Integer value1, Integer value2) {
            addCriterion("IsMO between", value1, value2, "ismo");
            return (Criteria) this;
        }

        public Criteria andIsmoNotBetween(Integer value1, Integer value2) {
            addCriterion("IsMO not between", value1, value2, "ismo");
            return (Criteria) this;
        }

        public Criteria andCommandcontentIsNull() {
            addCriterion("CommandContent is null");
            return (Criteria) this;
        }

        public Criteria andCommandcontentIsNotNull() {
            addCriterion("CommandContent is not null");
            return (Criteria) this;
        }

        public Criteria andCommandcontentEqualTo(String value) {
            addCriterion("CommandContent =", value, "commandcontent");
            return (Criteria) this;
        }

        public Criteria andCommandcontentNotEqualTo(String value) {
            addCriterion("CommandContent <>", value, "commandcontent");
            return (Criteria) this;
        }

        public Criteria andCommandcontentGreaterThan(String value) {
            addCriterion("CommandContent >", value, "commandcontent");
            return (Criteria) this;
        }

        public Criteria andCommandcontentGreaterThanOrEqualTo(String value) {
            addCriterion("CommandContent >=", value, "commandcontent");
            return (Criteria) this;
        }

        public Criteria andCommandcontentLessThan(String value) {
            addCriterion("CommandContent <", value, "commandcontent");
            return (Criteria) this;
        }

        public Criteria andCommandcontentLessThanOrEqualTo(String value) {
            addCriterion("CommandContent <=", value, "commandcontent");
            return (Criteria) this;
        }

        public Criteria andCommandcontentLike(String value) {
            addCriterion("CommandContent like", value, "commandcontent");
            return (Criteria) this;
        }

        public Criteria andCommandcontentNotLike(String value) {
            addCriterion("CommandContent not like", value, "commandcontent");
            return (Criteria) this;
        }

        public Criteria andCommandcontentIn(List<String> values) {
            addCriterion("CommandContent in", values, "commandcontent");
            return (Criteria) this;
        }

        public Criteria andCommandcontentNotIn(List<String> values) {
            addCriterion("CommandContent not in", values, "commandcontent");
            return (Criteria) this;
        }

        public Criteria andCommandcontentBetween(String value1, String value2) {
            addCriterion("CommandContent between", value1, value2, "commandcontent");
            return (Criteria) this;
        }

        public Criteria andCommandcontentNotBetween(String value1, String value2) {
            addCriterion("CommandContent not between", value1, value2, "commandcontent");
            return (Criteria) this;
        }

        public Criteria andErrorcodeIsNull() {
            addCriterion("ErrorCode is null");
            return (Criteria) this;
        }

        public Criteria andErrorcodeIsNotNull() {
            addCriterion("ErrorCode is not null");
            return (Criteria) this;
        }

        public Criteria andErrorcodeEqualTo(Integer value) {
            addCriterion("ErrorCode =", value, "errorcode");
            return (Criteria) this;
        }

        public Criteria andErrorcodeNotEqualTo(Integer value) {
            addCriterion("ErrorCode <>", value, "errorcode");
            return (Criteria) this;
        }

        public Criteria andErrorcodeGreaterThan(Integer value) {
            addCriterion("ErrorCode >", value, "errorcode");
            return (Criteria) this;
        }

        public Criteria andErrorcodeGreaterThanOrEqualTo(Integer value) {
            addCriterion("ErrorCode >=", value, "errorcode");
            return (Criteria) this;
        }

        public Criteria andErrorcodeLessThan(Integer value) {
            addCriterion("ErrorCode <", value, "errorcode");
            return (Criteria) this;
        }

        public Criteria andErrorcodeLessThanOrEqualTo(Integer value) {
            addCriterion("ErrorCode <=", value, "errorcode");
            return (Criteria) this;
        }

        public Criteria andErrorcodeIn(List<Integer> values) {
            addCriterion("ErrorCode in", values, "errorcode");
            return (Criteria) this;
        }

        public Criteria andErrorcodeNotIn(List<Integer> values) {
            addCriterion("ErrorCode not in", values, "errorcode");
            return (Criteria) this;
        }

        public Criteria andErrorcodeBetween(Integer value1, Integer value2) {
            addCriterion("ErrorCode between", value1, value2, "errorcode");
            return (Criteria) this;
        }

        public Criteria andErrorcodeNotBetween(Integer value1, Integer value2) {
            addCriterion("ErrorCode not between", value1, value2, "errorcode");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIsNull() {
            addCriterion("CreateTime is null");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIsNotNull() {
            addCriterion("CreateTime is not null");
            return (Criteria) this;
        }

        public Criteria andCreatetimeEqualTo(Date value) {
            addCriterion("CreateTime =", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotEqualTo(Date value) {
            addCriterion("CreateTime <>", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeGreaterThan(Date value) {
            addCriterion("CreateTime >", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeGreaterThanOrEqualTo(Date value) {
            addCriterion("CreateTime >=", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeLessThan(Date value) {
            addCriterion("CreateTime <", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeLessThanOrEqualTo(Date value) {
            addCriterion("CreateTime <=", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIn(List<Date> values) {
            addCriterion("CreateTime in", values, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotIn(List<Date> values) {
            addCriterion("CreateTime not in", values, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeBetween(Date value1, Date value2) {
            addCriterion("CreateTime between", value1, value2, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotBetween(Date value1, Date value2) {
            addCriterion("CreateTime not between", value1, value2, "createtime");
            return (Criteria) this;
        }

        public Criteria andSendtimeIsNull() {
            addCriterion("sendTime is null");
            return (Criteria) this;
        }

        public Criteria andSendtimeIsNotNull() {
            addCriterion("sendTime is not null");
            return (Criteria) this;
        }

        public Criteria andSendtimeEqualTo(Long value) {
            addCriterion("sendTime =", value, "sendtime");
            return (Criteria) this;
        }

        public Criteria andSendtimeNotEqualTo(Long value) {
            addCriterion("sendTime <>", value, "sendtime");
            return (Criteria) this;
        }

        public Criteria andSendtimeGreaterThan(Long value) {
            addCriterion("sendTime >", value, "sendtime");
            return (Criteria) this;
        }

        public Criteria andSendtimeGreaterThanOrEqualTo(Long value) {
            addCriterion("sendTime >=", value, "sendtime");
            return (Criteria) this;
        }

        public Criteria andSendtimeLessThan(Long value) {
            addCriterion("sendTime <", value, "sendtime");
            return (Criteria) this;
        }

        public Criteria andSendtimeLessThanOrEqualTo(Long value) {
            addCriterion("sendTime <=", value, "sendtime");
            return (Criteria) this;
        }

        public Criteria andSendtimeIn(List<Long> values) {
            addCriterion("sendTime in", values, "sendtime");
            return (Criteria) this;
        }

        public Criteria andSendtimeNotIn(List<Long> values) {
            addCriterion("sendTime not in", values, "sendtime");
            return (Criteria) this;
        }

        public Criteria andSendtimeBetween(Long value1, Long value2) {
            addCriterion("sendTime between", value1, value2, "sendtime");
            return (Criteria) this;
        }

        public Criteria andSendtimeNotBetween(Long value1, Long value2) {
            addCriterion("sendTime not between", value1, value2, "sendtime");
            return (Criteria) this;
        }

        public Criteria andChecktimeIsNull() {
            addCriterion("CheckTime is null");
            return (Criteria) this;
        }

        public Criteria andChecktimeIsNotNull() {
            addCriterion("CheckTime is not null");
            return (Criteria) this;
        }

        public Criteria andChecktimeEqualTo(Long value) {
            addCriterion("CheckTime =", value, "checktime");
            return (Criteria) this;
        }

        public Criteria andChecktimeNotEqualTo(Long value) {
            addCriterion("CheckTime <>", value, "checktime");
            return (Criteria) this;
        }

        public Criteria andChecktimeGreaterThan(Long value) {
            addCriterion("CheckTime >", value, "checktime");
            return (Criteria) this;
        }

        public Criteria andChecktimeGreaterThanOrEqualTo(Long value) {
            addCriterion("CheckTime >=", value, "checktime");
            return (Criteria) this;
        }

        public Criteria andChecktimeLessThan(Long value) {
            addCriterion("CheckTime <", value, "checktime");
            return (Criteria) this;
        }

        public Criteria andChecktimeLessThanOrEqualTo(Long value) {
            addCriterion("CheckTime <=", value, "checktime");
            return (Criteria) this;
        }

        public Criteria andChecktimeIn(List<Long> values) {
            addCriterion("CheckTime in", values, "checktime");
            return (Criteria) this;
        }

        public Criteria andChecktimeNotIn(List<Long> values) {
            addCriterion("CheckTime not in", values, "checktime");
            return (Criteria) this;
        }

        public Criteria andChecktimeBetween(Long value1, Long value2) {
            addCriterion("CheckTime between", value1, value2, "checktime");
            return (Criteria) this;
        }

        public Criteria andChecktimeNotBetween(Long value1, Long value2) {
            addCriterion("CheckTime not between", value1, value2, "checktime");
            return (Criteria) this;
        }

        public Criteria andCommidIsNull() {
            addCriterion("commId is null");
            return (Criteria) this;
        }

        public Criteria andCommidIsNotNull() {
            addCriterion("commId is not null");
            return (Criteria) this;
        }

        public Criteria andCommidEqualTo(Integer value) {
            addCriterion("commId =", value, "commid");
            return (Criteria) this;
        }

        public Criteria andCommidNotEqualTo(Integer value) {
            addCriterion("commId <>", value, "commid");
            return (Criteria) this;
        }

        public Criteria andCommidGreaterThan(Integer value) {
            addCriterion("commId >", value, "commid");
            return (Criteria) this;
        }

        public Criteria andCommidGreaterThanOrEqualTo(Integer value) {
            addCriterion("commId >=", value, "commid");
            return (Criteria) this;
        }

        public Criteria andCommidLessThan(Integer value) {
            addCriterion("commId <", value, "commid");
            return (Criteria) this;
        }

        public Criteria andCommidLessThanOrEqualTo(Integer value) {
            addCriterion("commId <=", value, "commid");
            return (Criteria) this;
        }

        public Criteria andCommidIn(List<Integer> values) {
            addCriterion("commId in", values, "commid");
            return (Criteria) this;
        }

        public Criteria andCommidNotIn(List<Integer> values) {
            addCriterion("commId not in", values, "commid");
            return (Criteria) this;
        }

        public Criteria andCommidBetween(Integer value1, Integer value2) {
            addCriterion("commId between", value1, value2, "commid");
            return (Criteria) this;
        }

        public Criteria andCommidNotBetween(Integer value1, Integer value2) {
            addCriterion("commId not between", value1, value2, "commid");
            return (Criteria) this;
        }

        public Criteria andOrdernoIsNull() {
            addCriterion("orderNo is null");
            return (Criteria) this;
        }

        public Criteria andOrdernoIsNotNull() {
            addCriterion("orderNo is not null");
            return (Criteria) this;
        }

        public Criteria andOrdernoEqualTo(String value) {
            addCriterion("orderNo =", value, "orderno");
            return (Criteria) this;
        }

        public Criteria andOrdernoNotEqualTo(String value) {
            addCriterion("orderNo <>", value, "orderno");
            return (Criteria) this;
        }

        public Criteria andOrdernoGreaterThan(String value) {
            addCriterion("orderNo >", value, "orderno");
            return (Criteria) this;
        }

        public Criteria andOrdernoGreaterThanOrEqualTo(String value) {
            addCriterion("orderNo >=", value, "orderno");
            return (Criteria) this;
        }

        public Criteria andOrdernoLessThan(String value) {
            addCriterion("orderNo <", value, "orderno");
            return (Criteria) this;
        }

        public Criteria andOrdernoLessThanOrEqualTo(String value) {
            addCriterion("orderNo <=", value, "orderno");
            return (Criteria) this;
        }

        public Criteria andOrdernoLike(String value) {
            addCriterion("orderNo like", value, "orderno");
            return (Criteria) this;
        }

        public Criteria andOrdernoNotLike(String value) {
            addCriterion("orderNo not like", value, "orderno");
            return (Criteria) this;
        }

        public Criteria andOrdernoIn(List<String> values) {
            addCriterion("orderNo in", values, "orderno");
            return (Criteria) this;
        }

        public Criteria andOrdernoNotIn(List<String> values) {
            addCriterion("orderNo not in", values, "orderno");
            return (Criteria) this;
        }

        public Criteria andOrdernoBetween(String value1, String value2) {
            addCriterion("orderNo between", value1, value2, "orderno");
            return (Criteria) this;
        }

        public Criteria andOrdernoNotBetween(String value1, String value2) {
            addCriterion("orderNo not between", value1, value2, "orderno");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}